#ifndef _FIG_ENEMY_COLLECTION_H_
#define _FIG_ENEMY_COLLECTION_H_

#include "ui/ui_manager.h"
#include "fig_enemy_manager.h"
#include "fig_enemy_craft.h"

class FIGBullet;

class FIGEnemyCollection
{
public:

	

	FIGEnemyCollection(FIGEnemyCraft::ENEMY_TYPES Type,
						unsigned long NameCRC
						);


	void							RenderDecal(const math::Vec2& Offset,float Scale);
	void							Render(const math::Vec2& Offset,float Scale);
	void							RenderShadow(const math::Vec2& Offset,float Scale);
	void							RenderDebug(const math::Vec2& Offset,float Scale);
	void							Tick(float dt);


	void							Clear();
	void							Spawn(const FIGLevel::EnemyInfo* pEnemyInfo );
	FIGEnemyCraft::ENEMY_TYPES		GetType()const { return m_Type; };
	unsigned long					GetNameCRC() const { return m_NameCRC; };
	int								GetCount()const { return m_Enemies.size(); };
	FIGCraft*						GetAirCraftByIndex(int Index);
	bool							HitTest(FIGBullet* pBullet);
	FIGEnemyCraft*					CreateEnemyCraft(const FIGLevel::EnemyInfo* pEnemyInfo);


protected:

	
	FIGEnemyCraft::ENEMY_TYPES		m_Type;
	unsigned long					m_NameCRC;

	std::vector<FIGEnemyCraft*>		m_Enemies;

};

#endif